package cn.jinjimi.framework.pay;

import com.google.gson.annotations.SerializedName;

import cn.jinjimi.framework.proguard.Keep;

/**
 * 支付订单
 *
 * @author Jinsen
 * @date 2015/7/7
 */
@Keep
public class PayOrder {

    /**
     * 业务类型
     */
    public String bizType;

    /**
     * 订单号
     */
    public String orderId;

    /**
     * 订单描述
     */
    public String desc;

    /**
     * 支付结果异步通知地址
     */
    public String notifyUrl;

    /**
     * 支付结果同步地址
     */
    public String returnUrl;

    /**
     * 商品名
     */
    public String subject;

    /**
     * 商品描述
     */
    public String body;

    /**
     * 支付平台
     * @values [alipay|wxpay]
     */
    public String platform;

    /**
     * 支付宝支付单
     */
    @Keep
    public static class AliPayOrderExt extends PayOrder {
        /**
         * 订单信息
         */
        public String orderInfo;
    }

    /**
     * 微信支付单
     */
    @Keep
    public static class WXPayOrderExt extends PayOrder {
        /**
         * 商户ID
         */
        public String partnerId;

        /**
         * 预付单号
         */
        public String prepayId;

        /**
         * default is apk package name
         */
        @SerializedName("package")
        public String packageValue;

        /**
         * 随机字符串
         */
        public String nonceStr;

        /**
         * 订单时间戳
         */
        public String timeStamp;

        /**
         * 签名
         */
        public String sign;
    }
}
